#!/usr/bin/env node

// 可以手动解析输入的命令行：很麻烦
// console.log(process.argv)
// 借助 commander 库
// 两种引入方式都支持，第二种编译器识别程度更高
// const program = require('commander')
const { program } = require('commander')

const helpOption = require('./core/helpOption')
const { createProject, addComponent } = require('./core/actions')

helpOption()

// 增加actions操作
// action：创建项目
program
  .command('create <project> [...others]')
  .description('Create a vue proejct into a folader. 例如：nscli create vue-demo')
  .action(createProject)

// 创建组件
program
  .command('addcpn <cpnname> [...others]')
  .description('Create a vue component into a folder. 例如：nscli addcpn tabBar -d /src/component')
  .action(addComponent)

// 让commander解析 process.argv命令行的参数
program.parse(process.argv)

// 读取option的参数
// console.log(program.opts().dest)

